From: smh22@boulderdash.cl.cam.ac.uk Date: Thu, 5 Dec 2002 14:14:32 +0000 (+0000) Subject: bitkeeper revision 1.7.1.4 (3def5f48kwmL0X0eiElxGFHZW7Qdhg) X-Git-Tag: archive/raspbian/4.8.0-1+rpi1~1^2~19118^2~1 X-Git-Url: https://dgit.raspbian.org/%22http://www.example.com/cgi/%22/%22http:/www.example.com/cgi/%22?a=commitdiff_plain;h=6ffce1025b608cb48274b5e5b0a38ef479b458c3;p=xen.git bitkeeper revision 1.7.1.4 (3def5f48kwmL0X0eiElxGFHZW7Qdhg) shrink ring1/3 segments to 3.5GB + associated changes + a few tweaks. --- diff --git a/xen-2.4.16/arch/i386/boot/boot.S b/xen-2.4.16/arch/i386/boot/boot.S index 1b7323ee7e..69aa1e8f6d 100644 --- a/xen-2.4.16/arch/i386/boot/boot.S +++ b/xen-2.4.16/arch/i386/boot/boot.S @@ -219,10 +219,10 @@ nopaging_gdt_descr: ENTRY(gdt_table) .quad 0x0000000000000000 /* NULL descriptor */ .quad 0x0000000000000000 /* not used */ - .quad 0x00ceba000000ffff /* 0x11 ring 1 3.5GB code at 0x00000000 */ - .quad 0x00ceb2000000ffff /* 0x19 ring 1 3.5GB data at 0x00000000 */ - .quad 0x00cefa000000ffff /* 0x23 ring 3 3.5GB code at 0x00000000 */ - .quad 0x00cef2000000ffff /* 0x2b ring 3 3.5GB data at 0x00000000 */ + .quad 0x00cdba000000ffff /* 0x11 ring 1 3.5GB code at 0x00000000 */ + .quad 0x00cdb2000000ffff /* 0x19 ring 1 3.5GB data at 0x00000000 */ + .quad 0x00cdfa000000ffff /* 0x23 ring 3 3.5GB code at 0x00000000 */ + .quad 0x00cdf2000000ffff /* 0x2b ring 3 3.5GB data at 0x00000000 */ .quad 0x00cf9a000000ffff /* 0x30 ring 0 4.0GB code at 0x00000000 */ .quad 0x00cf92000000ffff /* 0x38 ring 0 4.0GB data at 0x00000000 */ .quad 0x0000000000000000 diff --git a/xen-2.4.16/common/block.c b/xen-2.4.16/common/block.c index 6ccdb107ed..851b3b544c 100644 --- a/xen-2.4.16/common/block.c +++ b/xen-2.4.16/common/block.c @@ -17,5 +17,6 @@ */ blk_ring_t *create_block_ring(int domain) { - printk ("XEN create block ring"); + printk ("XEN create block ring "); + return (blk_ring_t *)NULL; } diff --git a/xen-2.4.16/common/domain.c b/xen-2.4.16/common/domain.c index a1d5de21c9..d2cce11c5e 100644 --- a/xen-2.4.16/common/domain.c +++ b/xen-2.4.16/common/domain.c @@ -402,7 +402,7 @@ int setup_guestos(struct task_struct *p, dom0_newdomain_t *params) unsigned long cur_address, end_address, alloc_address, vaddr; unsigned long virt_load_address, virt_stack_address, virt_shinfo_address; unsigned long virt_ftable_start_addr = 0, virt_ftable_end_addr; - unsigned long ft_mapping = frame_table; + unsigned long ft_mapping = (unsigned long)frame_table; unsigned int ft_size = 0; start_info_t *virt_startinfo_address; unsigned long long time; @@ -410,7 +410,6 @@ int setup_guestos(struct task_struct *p, dom0_newdomain_t *params) l1_pgentry_t *l1tab = NULL; struct pfn_info *page = NULL; net_ring_t *net_ring; - blk_ring_t *blk_ring; if ( strncmp(__va(mod[0].mod_start), "XenoGues", 8) ) { @@ -578,11 +577,18 @@ int setup_guestos(struct task_struct *p, dom0_newdomain_t *params) net_ring = create_net_vif(dom); if (!net_ring) panic("no network ring!\n"); } - virt_startinfo_address->net_rings = p->net_ring_base; + +/* XXX SMH: horrible hack to convert hypervisor VAs in SHIP to guest VAs */ +#define SHIP2GUEST(_x) (virt_shinfo_address | (((unsigned long)(_x)) & 0xFFF)) + + virt_startinfo_address->net_rings = + (net_ring_t *)SHIP2GUEST(p->net_ring_base); virt_startinfo_address->num_net_rings = p->num_net_vifs; /* Add block io interface */ - virt_startinfo_address->blk_ring = p->blk_ring_base; + virt_startinfo_address->blk_ring = + (blk_ring_t *)SHIP2GUEST(p->blk_ring_base); + /* We tell OS about any modules we were given. */ if ( nr_mods > 1 ) diff --git a/xen-2.4.16/common/memory.c b/xen-2.4.16/common/memory.c index 7b2d25a07b..5227ecf05a 100644 --- a/xen-2.4.16/common/memory.c +++ b/xen-2.4.16/common/memory.c @@ -166,7 +166,7 @@ #include #include -#if 1 +#if 0 #define MEM_LOG(_f, _a...) printk("DOM%d: (file=memory.c, line=%d) " _f "\n", current->domain, __LINE__, ## _a ) #else #define MEM_LOG(_f, _a...) ((void)0)